package cn.edu.bzu.ie.sf.mealsmisweb.service;

import cn.edu.bzu.ie.sf.mealsmisweb.entity.Disinfection;

import java.util.List;

/**
 * @version v1.0.0
 * @Package : cn.edu.bzu.ie.sf.mealsmisweb.service
 * @Description : 卫生消毒记录业务接口
 * @Create on : 2021/8/15 18:08
 * @author: Feng Song 宋锋
 **/
public interface DisinfectionService {
    /**
     * 获取某个部门下某个周的所有卫生消毒记录信息，用于大队用户的管理
     * @param pid 父部门id
     * @param year 年份
     * @param week 周数
     * @return List<Disinfection> 集合实例
     */
    List<Disinfection> getDisinfectionListByPidAndWeek(int pid, String year, int week);

    /**
     * 获取某个部门的所有的卫生消毒记录的数量
     * @param depid 部门的id
     * @return int 数量
     */
    long getCountByDepid(int depid);

    /**
     * 获取某个部门下的所有的
     * @param depid 部门id
     * @param firstNum 当前的页码的第1条记录
     * @param pageSize 每个页面的计算条数
     * @return List<Disinfection> 集合实例
     */
    List<Disinfection> getDisinfectionPageListByDepid(int depid, int firstNum, int pageSize);

    /**
     * 获取载个部门某个周的卫生消毒记录信息，用于中队用户的上传与维护
     * 也可以用于支队与大队用户的查询
     * @param depid 部门id
     * @param year 年份
     * @param week 周数
     * @return Disinfection 实例
     */
    Disinfection getDisinfectionByDepidAndWeek(int depid, String year, int week);

    /**
     * 添加卫生消毒记录信息
     * @param item 要添加的卫生消毒记录信息，无id
     * @return int 影响的行数
     */
    int addDisinfection(Disinfection item);

    /**
     * 修改卫生消毒记录信息
     * @param item 要修改的卫生消毒记录信息
     * @return int 影响的行数
     */
    int editDisinfection(Disinfection item);

    /**
     * 删除卫生消毒记录信息
     * @param id 要删除对象的id
     * @return int 影响的行数
     */
    int delDisinfection(int id);
}
